
#include <mockcpp/mockcpp.hpp>
#include <testngpp/testngpp.hpp>

#include <VolumeUnit.h>
#include <Quantity.h>

USING_MOCKCPP_NS
USING_TESTNGPP_NS

typedef Quantity<VolumeUnit> Volume;	

FIXTURE(VolumeUnit)
{
	TEST(should be able to compare tsps with tbsps, equal condition )
    	{
		ASSERT_EQ(1,Volume(3, TSP) == Volume(1, TBSP));
	}

	TEST(should be able to compare tsps with tbsps, not equal condition)
        {
   	        ASSERT_EQ(0, Volume(4, TSP)==Volume(1, TBSP));
	}

        TEST(should be able to compare tsps with qzs, equal condition )
        {
    		ASSERT_EQ(1,Volume(6, TSP) == Volume(1, OZ));
	}

	TEST(should be able to compare tbsps with qzs, equal condition )
    	{
		ASSERT_EQ(1,Volume(2, TBSP) == Volume(1, OZ));
	}

	TEST(should be do addition between tsps and tbsps)
	{
		ASSERT_TRUE(Volume(12,TSP) == (Volume(2, TBSP)+Volume(1, OZ)));
	}
};
